package com.light.mytext.contentprovider

import android.content.ContentResolver
import android.content.ContentValues
import android.database.Cursor
import android.net.Uri
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.light.mytext.R

/**
 * contentProvider
 */
class ContentProviderActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_content_provider)
        /**
         * 对user表进行操作
         */

        // 设置URI
        /**
         * 对user表进行操作
         */

        // 设置URI
        val uri_user: Uri = Uri.parse("content://com.example.zhaoziliang/user")
        // 插入表中数据
        val values = ContentValues()
        values.put("_id", 4)
        values.put("name", "zzl")
        // 获取ContentResolver
        val resolver: ContentResolver = contentResolver
        // 通过ContentResolver 根据URI 向ContentProvider中插入数据
        resolver.insert(uri_user, values)
        // 通过ContentResolver 向ContentProvider中查询数据
        val cursor: Cursor? =
            resolver.query(uri_user, arrayOf("_id", "name"), null, null, null)
        while (cursor!!.moveToNext()) {
            System.out.println(
                "query book:" + cursor.getInt(0).toString() + " " + cursor.getString(1)
            )
            // 将表中数据全部输出
        }
        cursor.close()
        // 关闭游标

        /**
         * 对job表进行操作
         */
        // 和上述类似,只是URI需要更改,从而匹配不同的URI CODE,从而找到不同的数据资源
        // 关闭游标
        /**
         * 对job表进行操作
         */
        // 和上述类似,只是URI需要更改,从而匹配不同的URI CODE,从而找到不同的数据资源
        val uri_job: Uri = Uri.parse("content://com.example.zhaoziliang/job")
        // 插入表中数据
        val values2 = ContentValues()
        values2.put("_id", 4)
        values2.put("job", "LOL Player")
        // 获取ContentResolver
        val resolver2: ContentResolver = contentResolver
        // 通过ContentResolver 根据URI 向ContentProvider中插入数据
        resolver2.insert(uri_job, values2)
        // 通过ContentResolver 向ContentProvider中查询数据
        val cursor2: Cursor? =
            resolver2.query(uri_job, arrayOf("_id", "job"), null, null, null)
        while (cursor2!!.moveToNext()) {
            System.out.println(
                "query job:" + cursor2.getInt(0).toString() + " " + cursor2.getString(1)
            )
            // 将表中数据全部输出
        }
        cursor2.close()
        // 关闭游标
    }
}